package Test_0814;

import Test_0814.book.BookShelf;
import Test_0814.user.AdminUser;
import Test_0814.user.NormalUser;
import Test_0814.user.User;

import java.util.Scanner;

/**
 * Created with Intellij IDEA
 * Description:
 * User: 星辰
 * Dare: 2024-08-14
 * Time: 19:23
 */
public class Main {
    //返回值类型为User，因为不知道返回的是普通用户还是管理员类型
    public static User login(){
        Scanner scanner =new Scanner(System.in);
        System.out.println("******请输入你的姓名******");
        String name = scanner.nextLine();
        System.out.println("******请选择你的身份******");
        System.out.println("********1.管理员*********");
        System.out.println("********2.普通用户*******");
        int choice =scanner.nextInt();
        if(choice==1){
            return new AdminUser(name);
        }else{
            return new NormalUser(name);
        }
    }
    public static void main(String[] args) {
        BookShelf bookshelf=new BookShelf();
        //向上转型
        User user=login();
        while(true){
        //虽然实现了向上转型，但是父类只能调用父类中的方法
        //所以父类也要有一个menu方法
        //使用choice来接收选择的功能选项
        int choice=user.menu();
        //根据选择的功能进行调用
        user.doIoperation(choice,bookshelf);
        }
    }
}
